Tutorial for R Markdown and R Notebook
This presentation gives a brief introduction to R Markdown and R Notebooks and this tutorial is adapted from introductory materials on their websites.
Overview
R Markdown is a text file type that has the extension .Rmd.
It provides a reproducible document framework for data science, and you can use a single R Markdown file to both
- save and execute codes
- generate high quality reports that can be shared with an audience
When you open the R Markdown file in the RStudio IDE, it becomes an R Notebook interface.
R Notebook is an R Markdown document with chunks that can be executed independently and interactively. Any R Markdown document can be used as a notebook, and all R Notebooks can be rendered to other R Markdown document types. A notebook can therefore be thought of as a special execution mode for R Markdown documents.

Creating an R Notebook
You can create a new notebook in RStudio with the menu command File -> New File -> R Notebook, or by using the html_notebook output type in your document’s YAML header.

After that, you will have an R Notebook with one code chunk.

Markdown Basics
Format the text in your R Markdown file with Pandoc’s Markdown, a set of markup annotations for plain text files. When you render your file, Pandoc transforms the marked up text into formatted text in your final file format: 
Inserting Chunks
In each chunk, the codes can be executed independently, and the output will appear beneath the chunk.
New chunks can be inserted quickly using the keyboard shortcut Ctrl + Alt + I (OS X: Cmd + Option + I), or via the Add Chunk command in the editor toolbar.

Chunk Options
Chunk output can be customized with knitr options, arguments set in the {} of a chunk header. Above, we use five arguments:
include = FALSE prevents code and results from appearing in the finished file. R Markdown still runs the code in the chunk, and the results can be used by other chunks.
echo = FALSE prevents code, but not the results from appearing in the finished file. This is a useful way to embed figures.
message = FALSE prevents messages that are generated by code from appearing in the finished file.
warning = FALSE prevents warnings that are generated by code from appearing in the finished.
fig.cap = "..." adds a caption to graphical results.
Also, you can process many languages in code chunks besides R. Some of the available language engines include:
- Python
- SQL
- Bash
- Stan
- JavaScript
To process a code chunk using an alternate language engine, replace the r at the start of your chunk declaration with the name of the language: 
Saving Your R Notebook
When you finish your R Notebook, you can choose to save the .Rmd file. At the same time, an .nb.html file is created alongside it. This file is a self-contained HTML file which contains both a rendered copy of the notebook with all current chunk outputs (suitable for display on a website) and a copy of the notebook .Rmd itself.
Also, the RStudio IDE knit button allows you to render your R Notebook to other formats like .pdf and .docx. You can render to additional formats by clicking the dropdown menu beside the knit button: 
Here is how it works:

LS0tCnRpdGxlOiAnJwpvdXRwdXQ6CiAgaHRtbF9ub3RlYm9vazogZGVmYXVsdAogIGh0bWxfZG9jdW1lbnQ6IGRlZmF1bHQKICBwZGZfZG9jdW1lbnQ6IGRlZmF1bHQKICB3b3JkX2RvY3VtZW50OiBkZWZhdWx0Ci0tLQojIyBUdXRvcmlhbCBmb3IgUiBNYXJrZG93biBhbmQgUiBOb3RlYm9vawoKVGhpcyBwcmVzZW50YXRpb24gZ2l2ZXMgYSBicmllZiBpbnRyb2R1Y3Rpb24gdG8gW2BSYCBNYXJrZG93bl0oaHR0cDovL3JtYXJrZG93bi5yc3R1ZGlvLmNvbSkgYW5kIFtgUmAgTm90ZWJvb2tzXShodHRwOi8vcm1hcmtkb3duLnJzdHVkaW8uY29tL3Jfbm90ZWJvb2tzLmh0bWwpIGFuZCB0aGlzIHR1dG9yaWFsIGlzIGFkYXB0ZWQgZnJvbSBpbnRyb2R1Y3RvcnkgbWF0ZXJpYWxzIG9uIHRoZWlyIHdlYnNpdGVzLgoKIyMjIE92ZXJ2aWV3CgoqKmBSYCBNYXJrZG93bioqIGlzIGEgdGV4dCBmaWxlIHR5cGUgdGhhdCBoYXMgdGhlIGV4dGVuc2lvbiBgLlJtZGAuIAoKSXQgcHJvdmlkZXMgYSByZXByb2R1Y2libGUgZG9jdW1lbnQgZnJhbWV3b3JrIGZvciBkYXRhIHNjaWVuY2UsIGFuZCB5b3UgY2FuIHVzZSBhIHNpbmdsZSBgUmAgTWFya2Rvd24gZmlsZSB0byBib3RoCgotIHNhdmUgYW5kIGV4ZWN1dGUgY29kZXMKLSBnZW5lcmF0ZSBoaWdoIHF1YWxpdHkgcmVwb3J0cyB0aGF0IGNhbiBiZSBzaGFyZWQgd2l0aCBhbiBhdWRpZW5jZQoKV2hlbiB5b3Ugb3BlbiB0aGUgYFJgIE1hcmtkb3duIGZpbGUgaW4gdGhlIGBSYFN0dWRpbyBJREUsIGl0IGJlY29tZXMgYW4gYFJgIE5vdGVib29rIGludGVyZmFjZS4gIAoKKipgUmAgTm90ZWJvb2sqKiBpcyBhbiBgUmAgTWFya2Rvd24gZG9jdW1lbnQgd2l0aCBjaHVua3MgdGhhdCBjYW4gYmUgZXhlY3V0ZWQgaW5kZXBlbmRlbnRseSBhbmQgaW50ZXJhY3RpdmVseS4gQW55IGBSYCBNYXJrZG93biBkb2N1bWVudCBjYW4gYmUgdXNlZCBhcyBhIG5vdGVib29rLCBhbmQgYWxsIGBSYCBOb3RlYm9va3MgY2FuIGJlIHJlbmRlcmVkIHRvIG90aGVyIGBSYCBNYXJrZG93biBkb2N1bWVudCB0eXBlcy4gQSBub3RlYm9vayBjYW4gdGhlcmVmb3JlIGJlIHRob3VnaHQgb2YgYXMgYSBzcGVjaWFsIGV4ZWN1dGlvbiBtb2RlIGZvciBgUmAgTWFya2Rvd24gZG9jdW1lbnRzLgoKPGltZyBzcmM9Imh0dHA6Ly9ybWFya2Rvd24ucnN0dWRpby5jb20vbGVzc29uLWltYWdlcy9ob3ctMS1maWxlLnBuZyIgYWx0PSJEcmF3aW5nIiBzdHlsZT0id2lkdGg6IDgwMHB4OyIvPgoKIyMjIENyZWF0aW5nIGFuIGBSYCBOb3RlYm9vawpZb3UgY2FuIGNyZWF0ZSBhIG5ldyBub3RlYm9vayBpbiBgUmBTdHVkaW8gd2l0aCB0aGUgbWVudSBjb21tYW5kICpGaWxlIC0+IE5ldyBGaWxlIC0+IGBSYCBOb3RlYm9vayosIG9yIGJ5IHVzaW5nIHRoZSBodG1sX25vdGVib29rIG91dHB1dCB0eXBlIGluIHlvdXIgZG9jdW1lbnQncyBZQU1MIGhlYWRlci4KCjxpbWcgc3JjPSJodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vQ2hlbmdsaWFuZ1RhbmcvVGVtcC1JbWFnZXMtZm9yLTIwMTctU3ByaW5nL21hc3Rlci9TY3JlZW5zaG90XzEucG5nIiBhbHQ9IkRyYXdpbmciIHN0eWxlPSJ3aWR0aDogNDUwcHg7Ii8+CgpBZnRlciB0aGF0LCB5b3Ugd2lsbCBoYXZlIGFuIGBSYCBOb3RlYm9vayB3aXRoIG9uZSBjb2RlIGNodW5rLgoKPGltZyBzcmM9Imh0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9DaGVuZ2xpYW5nVGFuZy9UZW1wLUltYWdlcy1mb3ItMjAxNy1TcHJpbmcvbWFzdGVyL1NjcmVlbnNob3RfMi5wbmciIGFsdD0iRHJhd2luZyIgc3R5bGU9IndpZHRoOiA4MDBweDsiLz4KCiMjIyBNYXJrZG93biBCYXNpY3MKRm9ybWF0IHRoZSB0ZXh0IGluIHlvdXIgYFJgIE1hcmtkb3duIGZpbGUgd2l0aCBQYW5kb2MncyBNYXJrZG93biwgYSBzZXQgb2YgbWFya3VwIGFubm90YXRpb25zIGZvciBwbGFpbiB0ZXh0IGZpbGVzLiBXaGVuIHlvdSByZW5kZXIgeW91ciBmaWxlLCBQYW5kb2MgdHJhbnNmb3JtcyB0aGUgbWFya2VkIHVwIHRleHQgaW50byBmb3JtYXR0ZWQgdGV4dCBpbiB5b3VyIGZpbmFsIGZpbGUgZm9ybWF0Ogo8aW1nIHNyYz0iaHR0cDovL3JtYXJrZG93bi5yc3R1ZGlvLmNvbS9sZXNzb24taW1hZ2VzL21hcmtkb3duLTEtbWFya3VwLnBuZyIgYWx0PSJEcmF3aW5nIiBzdHlsZT0id2lkdGg6IDgwMHB4OyIvPgoKIyMjIEluc2VydGluZyBDaHVua3MKSW4gZWFjaCBjaHVuaywgdGhlIGNvZGVzIGNhbiBiZSBleGVjdXRlZCBpbmRlcGVuZGVudGx5LCBhbmQgdGhlIG91dHB1dCB3aWxsIGFwcGVhciBiZW5lYXRoIHRoZSBjaHVuay4gCgpOZXcgY2h1bmtzIGNhbiBiZSBpbnNlcnRlZCBxdWlja2x5IHVzaW5nIHRoZSBrZXlib2FyZCBzaG9ydGN1dCAqKkN0cmwgKyBBbHQgKyBJKiogKE9TIFg6ICoqQ21kICsgT3B0aW9uICsgSSoqKSwgb3IgdmlhIHRoZSAqKkFkZCBDaHVuayoqIGNvbW1hbmQgaW4gdGhlIGVkaXRvciB0b29sYmFyLgoKPGltZyBzcmM9Imh0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9DaGVuZ2xpYW5nVGFuZy9UZW1wLUltYWdlcy1mb3ItMjAxNy1TcHJpbmcvbWFzdGVyL1NjcmVlbnNob3RfMy5wbmciIGFsdD0iRHJhd2luZyIgc3R5bGU9IndpZHRoOiA4MDBweDsiLz4KCgojIyMgQ2h1bmsgT3B0aW9ucwpDaHVuayBvdXRwdXQgY2FuIGJlIGN1c3RvbWl6ZWQgd2l0aCBrbml0ciBvcHRpb25zLCBhcmd1bWVudHMgc2V0IGluIHRoZSBge31gIG9mIGEgY2h1bmsgaGVhZGVyLiBBYm92ZSwgd2UgdXNlIGZpdmUgYXJndW1lbnRzOgoKLSBgaW5jbHVkZSA9IEZBTFNFYCBwcmV2ZW50cyBjb2RlIGFuZCByZXN1bHRzIGZyb20gYXBwZWFyaW5nIGluIHRoZSBmaW5pc2hlZCBmaWxlLiBgUmAgTWFya2Rvd24gc3RpbGwgcnVucyB0aGUgY29kZSBpbiB0aGUgY2h1bmssIGFuZCB0aGUgcmVzdWx0cyBjYW4gYmUgdXNlZCBieSBvdGhlciBjaHVua3MuCi0gYGVjaG8gPSBGQUxTRWAgcHJldmVudHMgY29kZSwgYnV0IG5vdCB0aGUgcmVzdWx0cyBmcm9tIGFwcGVhcmluZyBpbiB0aGUgZmluaXNoZWQgZmlsZS4gVGhpcyBpcyBhIHVzZWZ1bCB3YXkgdG8gZW1iZWQgZmlndXJlcy4KLSBgbWVzc2FnZSA9IEZBTFNFYCBwcmV2ZW50cyBtZXNzYWdlcyB0aGF0IGFyZSBnZW5lcmF0ZWQgYnkgY29kZSBmcm9tIGFwcGVhcmluZyBpbiB0aGUgZmluaXNoZWQgZmlsZS4KLSBgd2FybmluZyA9IEZBTFNFYCBwcmV2ZW50cyB3YXJuaW5ncyB0aGF0IGFyZSBnZW5lcmF0ZWQgYnkgY29kZSBmcm9tIGFwcGVhcmluZyBpbiB0aGUgZmluaXNoZWQuCi0gYGZpZy5jYXAgPSAiLi4uImAgYWRkcyBhIGNhcHRpb24gdG8gZ3JhcGhpY2FsIHJlc3VsdHMuCgpBbHNvLCB5b3UgY2FuIHByb2Nlc3MgbWFueSBsYW5ndWFnZXMgaW4gY29kZSBjaHVua3MgYmVzaWRlcyBgUmAuIFNvbWUgb2YgdGhlIGF2YWlsYWJsZSBsYW5ndWFnZSBlbmdpbmVzIGluY2x1ZGU6CgotIFB5dGhvbgotIFNRTAotIEJhc2gKLSBTdGFuCi0gSmF2YVNjcmlwdAoKVG8gcHJvY2VzcyBhIGNvZGUgY2h1bmsgdXNpbmcgYW4gYWx0ZXJuYXRlIGxhbmd1YWdlIGVuZ2luZSwgcmVwbGFjZSB0aGUgYHJgIGF0IHRoZSBzdGFydCBvZiB5b3VyIGNodW5rIGRlY2xhcmF0aW9uIHdpdGggdGhlIG5hbWUgb2YgdGhlIGxhbmd1YWdlOgo8aW1nIHNyYz0iaHR0cDovL3JtYXJrZG93bi5yc3R1ZGlvLmNvbS9sZXNzb24taW1hZ2VzL2xhbmd1YWdlcy0xLWRlbW9zLnBuZyIgYWx0PSJEcmF3aW5nIiBzdHlsZT0id2lkdGg6IDgwMHB4OyIvPgoKIyMjIFNhdmluZyBZb3VyIGBSYCBOb3RlYm9vawpXaGVuIHlvdSBmaW5pc2ggeW91ciBgUmAgTm90ZWJvb2ssIHlvdSBjYW4gY2hvb3NlIHRvIHNhdmUgdGhlIGAuUm1kYCBmaWxlLiBBdCB0aGUgc2FtZSB0aW1lLCBhbiBgLm5iLmh0bWxgIGZpbGUgaXMgY3JlYXRlZCBhbG9uZ3NpZGUgaXQuIFRoaXMgZmlsZSBpcyBhIHNlbGYtY29udGFpbmVkIEhUTUwgZmlsZSB3aGljaCBjb250YWlucyBib3RoIGEgcmVuZGVyZWQgY29weSBvZiB0aGUgbm90ZWJvb2sgd2l0aCBhbGwgY3VycmVudCBjaHVuayBvdXRwdXRzIChzdWl0YWJsZSBmb3IgZGlzcGxheSBvbiBhIHdlYnNpdGUpIGFuZCBhIGNvcHkgb2YgdGhlIG5vdGVib29rIGAuUm1kYCBpdHNlbGYuCgpBbHNvLCB0aGUgYFJgU3R1ZGlvIElERSBrbml0IGJ1dHRvbiBhbGxvd3MgeW91IHRvIHJlbmRlciB5b3VyIGBSYCBOb3RlYm9vayB0byBvdGhlciBmb3JtYXRzIGxpa2UgYC5wZGZgIGFuZCBgLmRvY3hgLiBZb3UgY2FuIHJlbmRlciB0byBhZGRpdGlvbmFsIGZvcm1hdHMgYnkgY2xpY2tpbmcgdGhlIGRyb3Bkb3duIG1lbnUgYmVzaWRlIHRoZSBrbml0IGJ1dHRvbjoKPGltZyBzcmM9Imh0dHA6Ly9ybWFya2Rvd24ucnN0dWRpby5jb20vbGVzc29uLWltYWdlcy9vdXRwdXRzLTItcGRmLnBuZyIgYWx0PSJEcmF3aW5nIiBzdHlsZT0id2lkdGg6IDgwMHB4OyIvPgoKSGVyZSBpcyBob3cgaXQgd29ya3M6Cgo8aW1nIHNyYz0iaHR0cDovL3JtYXJrZG93bi5yc3R1ZGlvLmNvbS9sZXNzb24taW1hZ2VzL1JNYXJrZG93bkZsb3cucG5nIiBhbHQ9IkRyYXdpbmciIHN0eWxlPSJ3aWR0aDogODAwcHg7Ii8+CgoKIyMjIFJlZmVyZW5jZXMKMS4gYFJgIE1hcmtkb3duIGZyb20gYFJgIFN0dWRpbyBbaHR0cDovL3JtYXJrZG93bi5yc3R1ZGlvLmNvbS9sZXNzb24tMS5odG1sXShodHRwOi8vcm1hcmtkb3duLnJzdHVkaW8uY29tL2xlc3Nvbi0xLmh0bWwpCgoyLiBgUmAgTm90ZWJvb2sgZnJvbSBgUmAgU3R1ZGlvIFtodHRwOi8vcm1hcmtkb3duLnJzdHVkaW8uY29tL3Jfbm90ZWJvb2tzLmh0bWxdKGh0dHA6Ly9ybWFya2Rvd24ucnN0dWRpby5jb20vcl9ub3RlYm9va3MuaHRtbCkK